#ifndef FASTNETDEVICETHREAD_HH_
#define FASTNETDEVICETHREAD_HH_

#include <pthread.h>

#include <sys/socket.h>

#include "FastNetDevice.hh"
#include "Synchronized.hh"

namespace requestDevices
{

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

void * startDevice(void * arg);

#ifdef __cplusplus
}
#endif /* __cplusplus */

class FastNetDevice;

class FastNetDeviceThread : public Synchronized
{
	bool notReady;
	FastNetDevice * master;
	pthread_t coreThread;
public:
	FastNetDeviceThread(FastNetDevice * m);
	virtual ~FastNetDeviceThread();
	void process();
	void setReady();
};

}

#endif /*FASTNETDEVICETHREAD_HH_*/
